home *** CD-ROM | disk | FTP | other *** search
/ TeX 1995 July / TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO / macros / plain / contrib / calendar / moon.tex < prev    next >
Encoding:
Text File  |  1993-09-06  |  2.8 KB  |  90 lines

  1. %%
  2. %%    FILE moon.tex
  3. %%
  4. \loadadvanced
  5. \newcount\moonno
  6. \def\firstmoon{\moonno=\Year
  7.  \multiply\moonno by123685 
  8.  \divide\moonno by10000
  9.  \multiply\moonno by4\advance\moonno by-1
  10.  \loop\moondate\ifnum\date<\yearbase
  11.  \advance\moonno by1\repeat}
  12. % Compute date for cycle quarter MOONNO
  13. \def\moondate{{\count0=\moonno
  14.  \lin 202.126.369+0.\count0=\count1
  15.  \count6=0
  16.  \lin 0.2.319+2907.\Sin\fac{3}
  17.  \divide\count6  by1000
  18.  \lin 365.249.86+7593.\id\fac{1}
  19.  \divide\count6 by10\count7 =\count6
  20.  \ifodd\moonno\quarters
  21.  \else\fullornew\fi\global\date=\count7}
  22.  \JDTtoL\message{\the\date}}
  23. % Correction for full and new moon
  24. \def\fullornew{\count6=0
  25.  \lin -393.0.0+0.
  26.  \divide\count1 by100000000 
  27.  \advance\count6  by\count1
  28.  \lin 0.628.300+6269.\Sin 
  29.  \multiply\count6  by\count4
  30.  \lin -7.-700.-369+  928.\Sin\fac{  -74}
  31.  \lin  0. 628. 300+ 6269.\Sin\fac{ 1734}
  32.  \lin  1. 256. 600+12539.\Sin\fac{   21}
  33.  \lin  8. 328. 670+ 5341.\Sin\fac{-4068}
  34.  \lin  8. 538. 220+-4597.\Sin\fac{   10}
  35.  \lin  8. 956. 970+11610.\Sin\fac{  -51}
  36.  \lin 16. 238. 589+-5526.\Sin\fac{   -4}
  37.  \lin 16. 657. 340+10682.\Sin\fac{  161}
  38.  \lin 16. 866. 890+  743.\Sin\fac{  104}
  39.  \lin 17. 285. 640+16951.\Sin\fac{   50}
  40.  \lin 17. 495. 190+ 7013.\Sin\fac{    4}
  41.  \lin 24. 986.  10+16023.\Sin\fac{   -4}
  42.  \lin 25. 195. 560+ 6084.\Sin\fac{   -6}
  43.  \divide\count6  by10000
  44.  \advance\count7 by\count6 }
  45. % Correction for quarters
  46. \def\quarters{\lin -393.0.0+0.
  47.  \divide\count1  by100000000 
  48.  \count6 =\count1  \lin 0.628.300+6269.
  49.  \Sin\multiply\count6  by\count4 
  50.  \lin -16. -29. -40+-4413.\Sin\fac{   40}
  51.  \lin  -7.-700.-369+  928.\Sin\fac{  -47}
  52.  \lin  -7. -72. -69+ 7198.\Sin\fac{  -30}
  53.  \lin   0. 628. 300+ 6270.\Sin\fac{ 1721}
  54.  \lin   1. 256. 600+12539.\Sin\fac{   21}
  55.  \lin   8. 328. 670+ 5341.\Sin\fac{-6280}
  56.  \lin   8. 538. 220+-4598.\Sin\fac{   21}
  57.  \lin   8. 956. 970+11611.\Sin\fac{ -119}
  58.  \lin  16. 238. 589+-5526.\Sin\fac{   -4}
  59.  \lin  16. 657. 340+10682.\Sin\fac{   89}
  60.  \lin  16. 866. 890+  743.\Sin\fac{   79}
  61.  \lin  17. 285. 640+16952.\Sin\fac{    3}
  62.  \lin  17. 495. 190+ 7013.\Sin\fac{    3}
  63.  \lin  24. 986.  10+16023.\Sin\fac{   -4}
  64.  \lin  25. 195. 560+ 6085.\Sin\fac{   -6}
  65.  \count8=\count6\count6=28000
  66.  \lin 628. 300. 373+ 6270.\Cos\fac{   -4}
  67.  \lin   8. 328. 670+ 5341.\Cos\fac{    3}
  68.  \count2=\moonno
  69.  \advance\count2 by-1\divide\count2 by2
  70.  \ifodd\count2\multiply\count6  by-1 \fi
  71.  \advance\count6 by\count8
  72.  \divide\count6  by10000
  73.  \advance\count7  by\count6 }
  74. % Events for phases.
  75. % Uses PHASE (local).
  76. \def\includemoons{\message{Including moons}
  77.  {\firstmoon
  78. \Month=12\Day=31\dayno\advance\date by1
  79.  \count1=\date
  80.  \loop\moondate\phase\ifnum\date<\count1
  81.   \evday[\themoon]\advance\moonno by1
  82.  \repeat}}
  83. \def\phase{{\count0=\moonno
  84.  \count1=\moonno
  85.  \divide\count0 by4\multiply\count0 by4
  86.  \advance\count1 by-\count0\relax
  87.  \global\edef\themoon{\ifcase\count1
  88.   New moon\or First quarter\or
  89.   Full Moon\or Last quarter\fi}}}
  90.